24652
25012
Haluaisin näyttää kohteet, jotka kuuluvat eri asiakkaille. Tätä varten haen tietoja ajax-puhelun kautta ja ryhmittelen tiedot kunkin yksittäisen asiakkaan perusteella. Sitten liitän ryhmitellyt tiedot html-tiedostooni.
Ryhmiteltyjen tietojen rakenne näyttää tältä:
"John Doe": [
{
"Item_id": 1
"Kohteen_nimi": "abc"
},
{
"Item_id": 2
"Kohteen_nimi": "def"
},
],
"Jane Doe":
{
"Item_id": 3
"Kohteen_nimi": "ghi"
},
{
"Item_id": 4
"Kohteen_nimi": "jkl"
},
]
Koodini näyttää tältä:
$ .each (groupedData, function (avain, arvo) {
$ ('. cust_items'). liitä (`

`+ avain +`

tuotenumero Kohteen nimi
`); $ .each (arvo, funktio (ky, val) { $ ('# dataTable tbody'). liitä ( ` `+ ky +` `+ val.Tuotteen_nimi +` `); }); }); Olen edessään vaaratilanteessa, jossa kaikki kohteet näytetään ensimmäisen asiakkaan alla, kun taas tiedot näytetään oikein toisen asiakkaan alla.
Sinulta puuttuu pilkkuja sen jälkeen, kun ominaisuuksia ja Jane Doe -ominaisuuden objekteja ei ole suljettu kohtaan []. Harkitse groupedData-objektin vaihtamista, koska syntakse ei ole oikein.
Muokkaa: Säädä myös mallimerkkijonoa ja myös taulukon käyttöä dynaamisella tunnuksella.
Näyte:
anna groupedData = {
"John Doe": [{
"Item_id": 1,
"Kohteen_nimi": "abc"
},
{
"Item_id": 2,
"Kohteen_nimi": "def"
}
],
"Jane Doe": [{
"Item_id": 3,
"Kohteen_nimi": "ghi"
},
{
"Item_id": 4,
"Kohteen_nimi": "jkl"
}
]
};
$ .each (groupedData, function (avain, arvo) {
$ ('. cust_items'). liitä (`

$ {avain}

tuotenumero Kohteen nimi
`); $ .each (arvo, funktio (ky, val) { $ (`#dataTable _ $ {key.split ('') .join ('_')} tbody`) .append ( ` $ {ky} $ {val.Item_name} `); }); });
| Olen vähän myöhässä juhliin, mutta tässä on hauska ja käytännöllinen tapa näyttää tietosi dynaamisesti